The present invention relates to a content acquiring device for acquiring content data stored in various content servers, a content acquiring method, a content server and a content acquiring system, and more particularly relates to a content acquiring device capable of acquiring content data stored in a cache section provided in the device in place of the content data stored in the content server.
In recent years, semiconductor technology, communication technology and the like have been developed. Therefore, it is possible to access a server on an internet through a leased line or a public telecommunication network, and to receive various types of content services by using a personal computer or a portable telephone in a home as a client. However, it takes time to access various content data through a communication line having a low data transfer speed in the public communication network or the like, and the number of internet users has been rapidly increasing so that throughput has been reduced. For this reason, it has been desirable that the capacity of a server for preparing and storing network content should be enhanced.
As a countermeasure to avoid such a situation, a cache is provided in a content acquiring device for acquiring various content data. Referring to content data that are not required to access a content server on the internet, data are fetched from the cache, thereby reducing data access through the network.
FIG. 1 shows the summary of the structure of a content acquiring system to which the content acquiring device for acquiring such content data is applied. The content acquiring system comprises a content acquiring device group 15 including a personal computer 10, a portable terminal for managing a game terminal or personal information (Personal Digital Assistants: hereinafter referred to as a PDA) 11, a laptop computer 13 having a mobile communication terminal 12 such as a personal handy phone system (hereinafter referred to as a PHS) or a portable telephone connected as a communication interface apparatus, a portable telephone 14 having a browser function and the like, and a content server group 17, including first to Nth content servers 161 to 16N for storing various content data in a variety of fields connected through a network 18, including for example a public communication network or a leased line.
For example, in a browser, a content data reading program that is operated by the personal computer 10, a URL (Uniform Resource Locator) for specifying various information resources, such as the desirable content is specified, and desirable content is acquired from the content server corresponding to the specified URL through a network 19 having the network 18. Based on the browser function of the portable telephone 14, moreover, the content data are acquired from the content server corresponding to the specified URL through a radio base station 20 for carrying out radio communication with the mobile communication terminal 12 and the portable telephone 14 and the network 19 comprising the network 18.
Each content acquiring device in the content acquiring device group 15 includes the following sections.
FIG. 2 illustrates a summary of the structure of the content acquiring device. The content acquiring device comprises an input section 25 for accepting various requests sent from a device user, an external input/output section 26 having an interface function together with the network 19, a display section 27 for displaying content acquired by the external input/output section 26, a cache section 28 for temporarily storing the content data, a timer section 29 for timing an update time of the content data stored in the cache section 28, and a control section 30 for controlling each section of the device.
Since the content acquiring device has the cache function for the content data, the content once accessed, can be fetched and read without the network 19. The content data stored in the cache section 28 are properly updated based on access information such as a validity term or a final update date, which is added to the content data. Thus, to the extend possible, the newest content is provided to the user without the network 19.
The control section 30 of the content acquiring device carries out control functions by executing various processes in accordance with a control program stored in a memory that is not shown.
FIG. 15 shows a summary of processing for content acquisition and control executed by the control section of the conventional content acquiring device. When the control section 30 accepts the input of various device operation commands from the device user through the input section 25 (Step S35), it first analyzes the device operation commands thus accepted (Step S36). As a result of the analysis, when the device operation commands sent from the device user is a request for acquiring content (Step S37: Y), a predetermined content acquiring processing is carried out (Step S38) and a processing section is ended (End). Moreover, when the device operation command sent from the device user is not the request for acquiring the content (Step S37: N), processing corresponding to other various operation commands thus analyzed is carried out (Step S39) and a processing section is ended (End).
FIGS. 16 to 19 show a summary of processing content for the content acquiring processing of Step S38 in FIG. 15. The control section 30 further analyzes the request for content acquisition that is accepted by the input section 25 specifies the requested content data, and retrieves from the cache section 28 to decide whether or not there are present the requested content data (Step S40). When it is decided the content data requested to be acquired by the cache section 28 are not present (Step S40: N), an instruction for transmitting a request for acquiring the content data is given to the external input/output section 26 (Step S41). The external input/output section 26 transmits a content acquisition request in response to the instruction given from the control section 30, through the network 19 to the content server that stores the content data requested.
The external input/output section 26 monitors the normal receipt of the content data from the content server serving on a content request destination through the network 19, and transfers the received content to the control section 30 when detecting the normal receipt. When the control section 30 acquires the content data normally received by the external input/output section 26 (Step S42: Y), it updates the cache section 28 with the acquired content (Step S43) and gives an instruction for displaying the received content to the display section 27 (Step S44). The display section 27 displays the received content in response to the instruction given from the control section 30. Then, a processing section is ended (End).
On the other hand, when the external input/output section 26 cannot receive the content data from the content server that is the acquisition request destination through the network 19 and the control section 30 cannot acquire the content data (Step S42: N), the control section 30 deletes the content stored in the cache section 28 and gives the display section 27 an instruction to display content acquisition failure (Step S45). The display section 27 displays an indication of the content acquisition failure in response to the instruction sent from the control section 30. Then, a processing section is ended (END).
When it is decided that the cache section 28 has the content data required to be acquired at the Step S40 (Step S40: Y), the control section 30 decides whether or not a validity term is added to the content data requested to be acquired which are stored in the cache section 28 (Step S46). The validity term may be, for example added at the time of the acquisition from the content server. When the validity term is added to the content stored in the cache section 28 (Step S46: Y), it is decided whether or not a current date timed by the timer section 29 renders expired the validity term added to the content (Step S47). When it is decided that the current date timed by the timer section 29 renders expired the validity term added to the content (Step S47: Y), the control section 30 further decides whether or not a final update date is added when the content stored in the cache section 28 are acquired (Step S48). If it is decided that the final update date is to be added when the content is acquired (Step S48: Y), the control section 30 gives an instruction for transmitting a content acquisition request on condition that the update is carried out after the final update date to the external input/output section 26 (Step S49). The content acquisition request is valid only if in the content server the content has been updated after the final update date. The external input/output section 26 transmits such a content acquisition request in response to an instruction sent from the control section 30.
The external input/output section 26 monitors the normal receipt of the content data from the content server serving as the content request destination through the network 19, and transfers the received content data to the control section 30 when detecting the normal receipt. When the control section 30 acquires normally the content data normally received by the external input/output section 26 (Step S50: Y), it updates the cache section 28 by using the acquired content (Step S51) and gives an instruction for displaying the received content to the display section 27 (Step S52). The display section 27 displays the received content in response to the instruction given from the control section 30. Then, a processing section is ended (END).
On the other hand, when the external input/output section 26 cannot receive the content data from the content server serving as the acquisition request destination through the network 19 and the control section 30 cannot acquire the content data at Step S50 (Step S50: N), the reason why the content cannot be acquired is analyzed. For example, a response sent from the content server is analyzed.. For example, date as a result of the analysis carried out according to the response from the content server, when the reason why the content data cannot be acquired is that content on the content server side was updated after the final update for example, (Step S53: Y), the control section 30 fetches the content previously acquired by the cache section 28 and gives the display section 27 an instruction to display that content (Step S54). The display section 27 displays the content according to the instruction sent from the control section 30. Then, a processing section is ended (END).
When the content data cannot be acquired for another reason except that the content data at the content server side are not updated after the final update date as a result of the analysis carried out according to the response sent from the content server, for example, at the Step S53 (Step S53: N), the control section 30 deletes the content stored in the cache section 28 (Step S55) and gives an instruction for displaying content acquisition failure to the display section 27 (Step S56). The display section 27 displays the content acquisition failure in response to the instruction sent from the control section 30. Then, a processing section is ended (END).
When the validity term is not added to the content stored in the cache section 28 at Step S46 (Step S46: N), the control section 30 gives the external input/output section 26 an instruction for transmitting a content acquisition request on condition that the content stored in the cache section 28 is updated after the date that the content is acquired (Step S57). The content acquisition request is valid only when the content stored in the cache section 28 are updated after the date that the content are acquired in the content server. The external input/output section 26 transmits such a content acquisition request in response to the instruction sent from the control section 30.
The external input/output section 26 monitors the normal receipt of the content data from the content server serving as content request destination through the network 19, and transfers the received content data to the control section 30 when detecting the normal receipt. When the control section 30 normally acquires the content data received by the external input/output section 26 (Step S58: Y), it updates the cache section 28 by using the acquired content (Step S59) and gives an instruction for displaying the received content to the display section 27 (Step S60). The display section 27 displays the received content in response to the instruction given from the control section 30. Then, a processing section is ended (END).
On the other hand, when the external input/output section 26 cannot receive the content data from the content server through the network 19 and the control section 30 cannot acquire the content data at the Step S58 (Step S58: N), the reason why the content cannot be acquired is analyzes analyzed. For example, as a result of the analysis carried out a response sent from the content server is analyzed. For example, when the reason why the content data cannot be acquired is that the content at the content server side was not updated after the date that the content stored in the cache section 28 were acquired according to the response from the content server, for example, (Step S61: Y), the control section 30 fetches the content previously acquired by the cache section 28 and gives the display section 27 an instruction to display the content (Step S62). The display section 27 displays the content according to the instruction sent from the control section 30. Then, a processing section is ended (END).
When the content data cannot be acquired for another reason except that the content on the content server side are not updated after the date that the content stored in the cache section 28 are acquired as a result of the analysis carried out according to the response sent from the content server, for example, at the Step S53 (Step S61: N), the control section 30 deletes the content stored in the cache section 28 (Step S63) and gives an instruction for displaying content acquisition failure to the display section 27 (Step S64). The display section 27 displays the content acquisition failure in response to the instruction sent from the control section 30. Then, a processing section is ended (END).
When it is decided that the current time obtained by the timer section 29 does not expire the validity term added to the content at the Step S47 (Step S47: N), the control section 30 fetches the content previously acquired by the cache section 28 and gives the display section 27 an instruction to display the content (Step S65). The display section 27 displays the content in response to the instruction sent from the control section 30. Then, a processing section is ended (END).
When the final update date is not added to the content stored in the cache section 28 at the Step S48 (Step S48: N), the control section 30 gives the external input/output section 26 an instruction for transmitting a content acquisition request on condition that the content stored in the cache section 28 is updated after the validity term added to the content stored in the cache section 28 (Step S66). The content acquisition request is valid only when the content stored in the cache section 28 is updated after the validity term added to the content added to the cache section 28. The external input/output section 26 transmits such a content acquisition request in response to the instruction sent from the control section 30.
The external input/output section 26 monitors the normal receipt of the content data from the content server to be a content request destination through the network 19, and transfers the received content data to the control section 30 when detecting the normal receipt. When the control section 30 normally acquires the content data received by the external input/output section 26 (Step S67: Y), it updates the cache section 28 by using the acquired content (Step S68) and gives an instruction for displaying the received content to the display section 27 (Step S69). The display section 27 displays the received content in response to the instruction given from the control section 30. Then, a processing section is ended (END).
On the other hand, when the external input/output section 26 cannot receive the content data from the content server to be the acquisition request destination through the network 19 and the control section 30 cannot acquire the content data at the Step S67 (Step S67: N), the reason why the content cannot be acquired is analyzed. For example, a response sent from the content server is analyzed. For example, when the reason the content data cannot be acquired is that the content on the content server side is not updated after the validity term added to the content stored in the cache section 28 is acquired as a result of the analysis carried out according to the response from the content server, for example, (Step S70: Y), the control section 30 fetches the content previously acquired by the cache section 28 and gives the display section 27 an instruction to display the content (Step S71). The display section 27 displays the content according to the instruction sent from the control section 30. Then, a processing section is ended (END).
When the content data cannot be acquired for any reason except that the content on the content server side is not updated after the validity term added to the content stored in the cache section 28 are acquired as a result of the analysis carried out according to the response sent from the content server, for example, at the Step S70 (Step S70: N), the control section 30 deletes the content stored in the cache section 28 (Step S72) and gives an instruction for displaying content acquisition failure to the display section 27 (Step S73). The display section 27 displays the content acquisition failure in response to the instruction sent from the control section 30. Then, a processing section is ended (END).
FIG. 20 represents a main part of the processing content of the update processing of the cache section shown in FIGS. 16, 17 and 19. The cache section 28 has a cache control section for controlling the whole cache section 28 and carries out the following processing to update the cache section 28. When the cache control section in the cache section 28 is to store content in the cache section 28 in response to an instruction sent from the control section 30, it first retrieves that the same content is stored in the cache section 28 or not (Step S80). When the cache control section detects that the same content is stored in the cache section 28 (Step S80: Y), it deletes the same content stored in the cache section 28 (Step S81) and carries out the rotation of the content (Step S82).
On the other hand, when the cache control section detects that the same content is not stored in the cache section 28 at the Step S80 (Step S80: N), it is decided whether the content is stored in all entries of the cache section 28 (Step S83). When it is decided that the content is stored in all entries (Step S83: Y), the cache control section deletes content on the head of the cache section 28 (Step S84) and carries out the rotation of the content (Step S85).
After the rotation of the cache section 28 is carried out at the Steps S82 and S85 or it is decided that the content is not stored in all the entries of the cache section 28 at the Step S83 (Step S83: N), the cache control section adds the content requested to be stored by the control section 30 to the end of the cache section 28 (Step S86).
In this case, the cache control section decides whether or not a validity term is added to the content requested to be stored by the control section 30 (Step S87). When it is decided that the validity term is added to the content requested to be stored by the control section 30, the cache control section (Step S87: Y), the cache control section adds the validity term to the content finally stored in the cache section 28 (Step S88). On the other hand, when the cache control section decides that the validity term is not added to the content requested to be stored by the control section 30 at the Step S87 (Step S87: N), “no validity term” is added to the content finally stored in the cache section 28 (Step S89).
Next, the cache control section decides whether or not a final update date is added to the content requested to be stored by the control section 30 (Step S90). If it is decided that the final update date is added to the content requested to be stored by the control section 30 (Step S90: Y), the cache control section adds the final update date to the content finally stored in the cache section 28 (Step S91). On the other hand, when the cache control section decides that the final update date is not added to the content requested to be stored by the control section 30 at the Step S90 (Step S90: N), “no final update date” is added to the content finally stored in the cache section 28 (Step S92). Finally, the cache control section adds a current date timed by the timer section 29 as a content acquisition date to the content finally stored in the cache section 28 (Step S93) and a processing section is ended (END).
In such a conventional content acquiring device, the content server collectively manages the content data. Therefore, there has been a problem in that it is necessary to carry out an update query with respective update conditions for the content server as in the Step S49, the Step S57 or the Step S66 in order to update the content. Moreover, this is the case even if the content was updated within the validity term in the content acquiring device. On the other hand, even if the content is stored in the cache section 28 in the content acquiring device, the content data are displayed by using the content data in the cache section 28 without acquiring the content. Thus, there has been a problem in that a current version of the content data collectively managed on the content server cannot always be read.